package com.nidu.demo.file.dto;

import com.nidu.demo.base.BaseTenantCO;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 文件客户端对象
 *
 * @author auto
 */
@Data
@Schema(description = "文件客户端对象")
@EqualsAndHashCode(callSuper = true)
public class FileCO extends BaseTenantCO {

    @Schema(description = "主键ID", example = "1")
    private Long id;

    @Schema(description = "配置编号", example = "1")
    private Long configId;

    @Schema(description = "文件名", example = "avatar.jpg")
    private String name;

    @Schema(description = "文件路径", example = "tenant_1/avatar/2025/01/01/abc123.jpg")
    private String path;

    @Schema(description = "文件访问URL", example = "https://example.com/file/tenant_1/avatar/2025/01/01/abc123.jpg")
    private String url;

    @Schema(description = "文件类型", example = "image/jpeg")
    private String type;

    @Schema(description = "文件大小（字节）", example = "1024")
    private Long size;
}